import { CustomerVO } from "../../customer/vos/customer.vo";
import { CompanySettingVO } from "../../settings/vos/settings.vo";

export interface PosPurhcasePaymentVO {
  id: string;
  amount: number;
  method: string;
  num: string;
  purchaseId: string;
  status: string;
  createTime: Date;
  createBy: string;
  customerId: string;
  updateTime: Date;
  updateBy: string;
}

export interface PosPurchaseVO {
  id: string;
  address: string;
  branchId: string;
  city: string;
  contactName: string;
  createBy: string;
  createTime: Date;
  customerId: string;
  district: string;
  email: string;
  isTaxExempted: string;
  num: string;
  originTotal: number;
  paidAmount: string;
  phoneNumber: string;
  saleId: string;
  shippingInclTax: number;
  state: string;
  status: string;
  tax: number;
  total: number;
  totalExc: number;
  type: string;
  updateBy: string;
  updateTime: Date;
  vendorId: string;
  zipcode: string;
}

export interface PurchaseItem {
  createTime: Date;
  id: string;
  price: number;
  quantity: number;
  rowTotal: number;
  rowTotalExc: number;
  snName: string[];
  variantId: string;
  variantName: string;
}

export interface TradeInOrderDetailVO {
  posPurchase: PosPurchaseVO;
  customer: CustomerVO;
  payments: PosPurhcasePaymentVO[];
  items: PurchaseItem[];
}

export type TradeInReceiptDataVO = TradeInOrderDetailVO & {
  companySetting: CompanySettingVO;
};
